package com.fosdata.dpm.domain;

import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;

import java.time.LocalDateTime;
import java.io.Serializable;


/**
 * <p>
 * 箱变设备表
 * </p>
 *
 * @author gyk
 * @since 2025-10-22
 */
@TableName("sys_xbdev")
public class SysXbdev extends Model<SysXbdev> {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @TableId(value = "xbd_id", type = IdType.AUTO)
    private Integer xbdId;

    /**
     * 箱变设备编号
     */
    private String xbdCode;

    /**
     * 箱变设备名称
     */
    private String xbdName;

    /**
     * 箱变类型编码;关联箱变类型编码
     */
    private String xbdXb;

    /**
     * 是否是关键设备;1关键设备，0非关键设备
     */
    private String xbdIskey;

    /**
     * 状态;删除1，正常0
     */
    private Integer xbdDelFlag;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private LocalDateTime createTime;


    @Override
    protected Serializable pkVal() {
        return this.xbdId;
    }

    public static long getSerialVersionUID() {
        return serialVersionUID;
    }

    public Integer getXbdId() {
        return xbdId;
    }

    public void setXbdId(Integer xbdId) {
        this.xbdId = xbdId;
    }

    public String getXbdCode() {
        return xbdCode;
    }

    public void setXbdCode(String xbdCode) {
        this.xbdCode = xbdCode;
    }

    public String getXbdName() {
        return xbdName;
    }

    public void setXbdName(String xbdName) {
        this.xbdName = xbdName;
    }

    public String getXbdXb() {
        return xbdXb;
    }

    public void setXbdXb(String xbdXb) {
        this.xbdXb = xbdXb;
    }

    public String getXbdIskey() {
        return xbdIskey;
    }

    public void setXbdIskey(String xbdIskey) {
        this.xbdIskey = xbdIskey;
    }

    public Integer getXbdDelFlag() {
        return xbdDelFlag;
    }

    public void setXbdDelFlag(Integer xbdDelFlag) {
        this.xbdDelFlag = xbdDelFlag;
    }

    public LocalDateTime getCreateTime() {
        return createTime;
    }

    public void setCreateTime(LocalDateTime createTime) {
        this.createTime = createTime;
    }

    @Override
    public String toString() {
        return "SysXbdev{" +
                "xbdId=" + xbdId +
                ", xbdCode='" + xbdCode + '\'' +
                ", xbdName='" + xbdName + '\'' +
                ", xbdXb='" + xbdXb + '\'' +
                ", xbdIskey='" + xbdIskey + '\'' +
                ", xbdDelFlag=" + xbdDelFlag +
                ", createTime=" + createTime +
                '}';
    }
}
